// import { baseUrl} from '22062002.xyz'
import {
    add,
} from '../../api/Post/post'
Page({
  
  /**
   * 页面的初始数据
   */
  data: {
    price:0,
    postbigid:0,
    description:"",
    postid:0,
    sort: [
      { name: 'home', value: '表白墙' },
      { name: 'hand', value: '闲置' },
    ],
    type1: [
      { name: '表白', value: '1' },
      { name: '求助', value: '4' },
      { name: '吐槽', value: '2' },
    ],
    type2: [
      { name: '闲置', value: '3' },
      { name: '求购', value: '5' },
    ],
    imageList: [],      // 上传图片集合
  	form: {          // 用于其他功能提交的参数
  		ossUrl: []
  	}
    },
  choose(e){
    this.setData({
      index:e.currentTarget.dataset.index,
      postbigid:e.currentTarget.dataset.index,
    })
    // console.log("post",this.data.postbigid);
  },

  // 选择上传图片的方式
  chooseImageTap() {
    let _this = this;
    wx.showActionSheet({
      itemList: ['从相册中选择', '拍一张'],
      itemColor: "#f389b0",
      success(res){
        if (!res.cancel) {
          if (res.tapIndex == 0) {
            // 从相册中选择
            _this.chooseWxImage('album')
          } else if (res.tapIndex == 1) {
            // 使用相机
            _this.chooseWxImage('camera')
          }
        }
      }
    })
  },
  // 选择图片
  chooseWxImage(type) {
    let _this = this;
    let imgs = this.data.imageList;
    wx.chooseImage({
      count: 9,
      sizeType: ['original', 'compressed'],
      sourceType: [type],
      success(res) {
        if (imgs.length > 8) {
          return wx.showToast({
            title: '最多可上传9张图片',
            icon: 'none'
          })
        }
        _this.upload(res.tempFilePaths[0]);
      }
    })
  },
  //上传图片到服务器
  upload: function(path) {
   let _this = this;
   let {ossUrl} = this.data.form;
//    console.log(ossUrl)
    wx.showToast({
        icon: "loading",
        title: "正在上传"
      }),
      //将本地资源上传到服务器
      //上传图片 需要调用传送文件的接口 不是这个添加接口
      wx.uploadFile({
          //todo 这个链接到时候要改成线上的
        url: 'https://22062002.xyz:8086/biz/buFile/uploadAliyun',    // 开发者服务器地址
        filePath: path,   // 要上传文件资源的路径 (本地路径)
        name: 'file',   // 文件对应的 key，开发者在服务端可以通过这个 key 获取文件的二进制内
        success: function(res) {
          console.log(res)
          // 判断下
          if (res && res.data) {
            const data = JSON.parse(res.data);
            if (data.code != 200) {
              wx.showToast({
                title: data.msg,
                icon: 'none'
              })
              return;
            } else {
              if (data.data) {
                ossUrl.push(data.data);
                console.log("oss",ossUrl)
                _this.setData({
                  imageList: ossUrl,
                  'form.ossUrl': ossUrl  
                })
              }
            }
          }
        },
        fail: function(e) {
          console.error('Upload failed', e);
           wx.showToast({
           title: '上传失败',
             icon: 'none'
          })
        },
        complete: function() {
          wx.hideToast(); //隐藏Toast
        }
      })
  },
  // 删除图片
  removeChooseImage(e) {
    let imgs = this.data.form.ossUrl;
    let {index} = e.currentTarget.dataset;
    imgs.splice(index, 1);
    this.setData({
      'form.ossUrl': imgs,
      imageList: imgs
    })
  },
  // 预览图片
  previewBigImage(e) {
    let imgs = this.data.imageList;
    let {index} = e.currentTarget.dataset;
    wx.previewImage({
      //当前显示图片
      current: imgs[index],
      //所有图片
      urls: imgs
    })
  },
  getprice:function(e){
    var price=e.detail.value
    // console.log(price);
    this.setData({
        price:price
    })
  },
  //获取值
  bindText:function(e){
    this.setData({
        description:e.detail.value
    })
    // console.log("des",this.data.description);
  },
  //表白墙的类型id
  getLovepostcateid(e) {
      //能取到 但是不是单选
    // console.log(e.detail.value)
    for (let i = 0, len = this.data.type1.length; i < len; i++) {
        var item= this.data.type1[i]
        item.checked =item.value == e.detail.value
    } 
      this.setData({
          type1:this.data.type1,
          postid:e.detail.value
      })
    //   console.log("postid",this.data.postid);
  },
  //闲置的类型id
  getSellpostcateid(e) {
    //能取到 但是不是单选
//   console.log(e.detail.value)
  for (let i = 0, len = this.data.type2.length; i < len; i++) {
      var item= this.data.type2[i]
      item.checked =item.value == e.detail.value
  } 
    this.setData({
        type2:this.data.type2,
        postid:e.detail.value
    })
},
//提交
submitForm: function () {
  // 进行简单的数据校验，比如帖子介绍不能为空
  if (this.data.description==null) {
      wx.showToast({
          title: '帖子介绍不能为空',
          icon: 'none'
      });
  }
  if (this.data.postbigid==0) {
    wx.showToast({
        title: '帖子分类不能为空啊！',
        icon: 'none'
    });
}
if (this.data.postid==0) {
    wx.showToast({
        title: '帖子类型不能为空啊！',
        icon: 'none'
    });
}
var userid=wx.getStorageSync('userid')
var price=this.data.postbigid==2? this.data.price :null; 

var schoolid=wx.getStorageSync('schoolid')
  // 发起网络请求将数据发送到后端，这里以 wx.request 为例，假设后端有对应的接口接收表单数据
  add({
    "cateId": this.data.postid,
    "userId": userid,
    "content": this.data.description,
    "schoolId": schoolid,
    "price": price,
    "userType": 0,
    "createTime": Date.now,
    "imgList": this.data.imageList
      })
      .then((res) => {
          if (res.data && res.data.success) {
              wx.showToast({
                  title: '提交成功',
                  success:function(){
                    wx.switchTab({
                        url: '/pages/my/my',
                      })
                  }
              });
              // 可以根据需求进行页面跳转等后续操作
          } else {
              wx.showToast({
                  title: res.msg,
                  icon: 'none'
              });
          }
      });
},

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})